package com.love.zywanandroid.retrofit.api

import com.zat.mes.andrmes.BomNotifiBean
import com.zat.mes.andrmes.MachineWarnNotifiBean
import com.zat.mes.andrmes.data.*
import com.zat.mes.andrmes.data.BaseResponse
import okhttp3.MultipartBody
import okhttp3.RequestBody
import retrofit2.Call
import retrofit2.http.*

/**
 * @author zy
 * @date :2020-02-04 10:20
 * @description:
 */
interface ApiService {

    /**
     * 获取公司列表
     */
    @GET(HttpUrl.URL_COM)
    fun getCom(): Call<BaseResponse<List<ComResultBean>>>

    /**
     * 登录
     */
    @POST(HttpUrl.URL_LOGIN)
    fun login(@Body request: RequestBody): Call<BaseResponse<LoginResultBean>>

    /**
     * 登录
     */
    @POST(HttpUrl.URL_UPDATE_PWD)
    fun updatePwd(@Body request: RequestBody): Call<BaseResponse<String>>

    /**
     * 注销
     */
    @POST(HttpUrl.URL_LOGOUT)
    fun logout(@Body request: RequestBody): Call<BaseResponse<String>>

    /**
     * 公告
     */
    @GET(HttpUrl.URL_MESSAGE)
    fun getMessage(@Query(value = "empId") empId: String): Call<BaseResponse<MessageBean>>

    /**
     * 签到列表
     */
    @GET(HttpUrl.URL_CLOCKLIST)
    fun getClockList(@Query(value = "day") day: String, @Query(value = "empId") empId: Long): Call<BaseResponse<List<ClockBean>>>

    /**
     * 删除签到签退
     */
    @POST(HttpUrl.URL_CLOCDEL)
    fun clockDel(@Query("workId") workId: Long): Call<BaseResponse<String>>

    /**
     *签到签退
     */
    @POST(HttpUrl.URL_CLOCKINSERT)
    fun clockInOut(@Body request: RequestBody): Call<BaseResponse<String>>

    /**
     * 组长获取员工签到退列表
     */
    @GET(HttpUrl.URL_CLOCREADLIST)
    fun getClockRead(
        @Query(value = "day") day: String, @Query(value = "empId") empId: Long, @Query(value = "status") status: String
    ): Call<BaseResponse<List<ClockBean>>>

    /**
     * 组长审核
     */
    @POST(HttpUrl.URL_CLOCREAD)
    fun clockRead(@Body request: RequestBody): Call<BaseResponse<String>>

    /**
     * 组长取消审核
     */
    @POST(HttpUrl.URL_CLOCUNREAD)
    fun clockUnRead(@Body request: RequestBody): Call<BaseResponse<String>>

    /**
     * 员工绑定设备
     */
    @POST(HttpUrl.URL_WORK_EMP_BIND)
    fun bindMachine(@Body request: RequestBody): Call<BaseResponse<String>>

    /**
     * 查询绑定设备列表
     */
    @GET(HttpUrl.URL_WORK_EMP_BIND_LIST)
    fun bindMachineList(@Query("empId") empId: String): Call<BaseResponse<List<BindMachineBean>>>

    /**
     * 删除绑定设备
     */
    @POST(HttpUrl.URL_WORK_EMP_BIND_DEL)
    fun delBindMachine(@Query("bingdingId") bingdingId: Long): Call<BaseResponse<String>>
    /**
     * 机器预警
     */
    @POST(HttpUrl.URL_INSERT_MACHINE_WARN)
    fun inserMachineWarn(@Body request: RequestBody): Call<BaseResponse<String>>


    /**
     * 首页菜单
     */
    @GET(HttpUrl.URL_SYSMENU)
    fun getSysMenu(@Query("empId") empId: Long): Call<BaseResponse<List<HomeBtnBean>>>

    /**
     * 权限
     */
    @GET(HttpUrl.URL_SELECT_AUTH)
    fun getAuth(@Query("eid") empId: Long): Call<BaseResponse<List<Long>>>

    /**
     * 查询各个组织下的班组列表
     */
    @GET(HttpUrl.URL_ORG_CLASSLIST)
    fun getOrgClassList(@Query("parentorgids") parentorgids: String): Call<BaseResponse<List<List<ClassResult>>>>

    /**
     *查询每个班组下的人员列表
     */
    @GET(HttpUrl.URL_GET_CLASS_EMPLIST)
    fun getClassEmpList(
        @Query(value = "currentPage") page: Int, @Query(value = "pageSize") size: Int, @Query(
            value = "classid"
        ) classId: Long
    ): Call<BaseResponse<EmpBean>>

    /**
     * 查询日计划人员列表
     */
    @GET(HttpUrl.URL_DAY_PLAN_EMPLIST)
    fun getDayPlayEmplist(
        @Query(value = "classid") classId: Long, @Query(value = "produceday") produceday: String, @Query(
            value = "currentPage"
        ) currentPage: Int, @Query("pageSize") pageSize: Int
    ): Call<BaseResponse<DayPlayEmpBean>>

    /**
     * 根据日期人员id 查询日生产计划
     */
    @GET(HttpUrl.URL_DAY_PLAN_PRODUCE)
    fun getDayPlanProduce(@Query(value = "empid") empId: Long, @Query(value = "produceday") produceday: String): Call<BaseResponse<DayPlanProduceBean>>

    /**
     * 根据二维码查询裁片包（做工）
     */
    @GET(HttpUrl.URL_GET_PACK)
    fun getPackByQrcode(@Query(value = "QRcode") qrCode: String?): Call<BaseResponse<PackBean>>
    /**
     * 根据二维码查询裁片包（质检）
     */
    @GET(HttpUrl.URL_GET_PACK_QC)
    fun getPackByQrcodeQc(@Query(value = "QRcode") qrCode: String?): Call<BaseResponse<PackBean>>

    /**
     * 根据二维码查询裁片包（修改数量）
     */
    @GET(HttpUrl.URL_GET_PACK_UPDATE)
    fun getPackByQrcodeUpdate(@Query(value = "QRcode") qrCode: String?): Call<BaseResponse<PackBean>>


    /**
     * 根据二维码查询裁片包(领取)
     */
    @GET(HttpUrl.URL_GET_PACK_GO)
    fun getPackByQrcodeGo(@Query(value = "QRcode") qrCode: String?): Call<BaseResponse<List<PackBean>>>

    /**
     * 根据二维码查询裁片包(领取)
     */
    @GET(HttpUrl.URL_GET_PACK_RFID_GO)
    fun getPackByRfidGo(@Query(value = "rfidCode") rfidCode: String?): Call<BaseResponse<List<PackBean>>>

    /**
     * 根据二维码查询裁片包(做工)
     */
    @GET(HttpUrl.URL_GET_PACK_RFID)
    fun getPackByRFRD(@Query(value = "RFIDcode") qrCode: String?): Call<BaseResponse<PackBean>>

    /**
     * 根据二维码查询裁片包(质检)
     */
    @GET(HttpUrl.URL_GET_PACK_RFID_QC)
    fun getPackByRFRDQc(@Query(value = "RFIDcode") qrCode: String?): Call<BaseResponse<PackBean>>

    /**
     * 根据二维码查询裁片包
     */
    @GET(HttpUrl.URL_GET_PACK_RFID_UPDATE)
    fun getPackByRFRDUpdate(@Query(value = "RFIDcode") qrCode: String?): Call<BaseResponse<PackBean>>

    /**
     * 插入日计划记录
     */
    @POST(HttpUrl.URL_INSERT_RECORD)
    fun insertRecord(@Body request: RequestBody): Call<BaseResponse<WorkRecordInsertResult>>

    /**
     * 查看扫码日计划工序列表
     */
    @POST(HttpUrl.URL_GET_SCAN_DAY_PLAN)
    fun getScanDayPlan(@Body request: RequestBody): Call<BaseResponse<String>>

    /**
     *查询日计划记录人员列表
     */
    @GET(HttpUrl.URL_WORK_RECORD_EMPLIST)
    fun getWorkRecordEmpList(@Query(value = "classid") classId: Long, @Query(value = "workDay") workDay: String): Call<BaseResponse<List<DayWorkRecordBean>>>

    /**
     * 根据日期 人员id查询员工的日计划记录
     */
    @GET(HttpUrl.URL_WORK_RECORD_LIST)
    fun getWorkRecordList(@Query(value = "empId") empId: Long, @Query(value = "workDay") workDay: String): Call<BaseResponse<List<DayWorkRecordBean>>>

    /**
     * 根据最近一次做工记录
     */
    @GET(HttpUrl.URL_WORK_LAST)
    fun getWorkRecordLast(@Query(value = "empId") empId: Long): Call<BaseResponse<List<DayWorkRecordBean>>>

    /**
     * 根据packid 人员id查询员工的日计划记录
     */
    @GET(HttpUrl.URL_WORK_RECORD_PACKID)
    fun getWorkRecord(
        @Query(value = "empId") empId: Long, @Query(value = "packId") packId: Long, @Query(
            value = "orderId"
        ) orderId: Long
    ): Call<BaseResponse<List<DayWorkRecordBean>>>

    /**
     * 质检计划列表
     */
    @GET(HttpUrl.URL_QC_PLAN)
    fun getQcPlanList(@Query(value = "empId") empId: Long, @Query(value = "startTime") startTime: String): Call<BaseResponse<List<QcPlanBean>>>

    /**
     * 巡检记录
     */
    @GET(HttpUrl.URL_WORK_QC_RECORD)
    fun getQcReCord(
        @Query(value = "empId") empId: Long, @Query(value = "packId") packId: Long, @Query(
            value = "orderId"
        ) orderStyleId: Long,@Query(value = "clothsqRcode") clothsqRcode:String?,@Query(value = "clothsRFIDcode")clothsRFIDcode:String?
    ): Call<BaseResponse<List<QcRecordBean>>>

    @GET(HttpUrl.URL_PARENTID)
    fun getParentTypeCode(@Query(value = "typeCode") typeCode: String): Call<BaseResponse<List<ParantTypeItem>>>

    /**
     * 插入质检记录
     */
    @POST(HttpUrl.URL_INSERT_QCRECORD)
    fun insertQcRecord(@Body request: RequestBody): Call<BaseResponse<String>>

    /**
     * 根据质检记录id查询
     */
    @GET(HttpUrl.URL_RECORD_BYID)
    fun getRecordById(@Query(value = "qcId") qcId: Long): Call<BaseResponse<QcRecordHasBean>>

    /**
     * 组长查询质检记录
     */
    @GET(HttpUrl.URL_WORK_RECORD_BY_CLASS_BOSS)
    fun getRecordByClassBoss(@Query(value = "empId") empId: Long, @Query(value = "startTime") startTime: String): Call<BaseResponse<List<QcRecordHasBean>>>

    /**
     * 组长查询质检记录
     */
    @GET(HttpUrl.URL_WORK_QC_HIS)
    fun getRecordByUser(@Query(value = "empId") empId: Long, @Query(value = "qcDate") startTime: String): Call<BaseResponse<List<QcRecordHasBean>>>

    /**
     * 处理质检详情
     */
    @POST(HttpUrl.URL_QC_RECORD_UPDATE)
    fun upDateQcRecord(@Body request: RequestBody): Call<BaseResponse<String>>

    /**
     * 待办事项
     */
    @GET(HttpUrl.URL_TODO_LIST)
    fun getTodoList(
        @Query(value = "currentPage") currentPage: Int, @Query("pageSize") pageSize: Int, @Query(
            "empid"
        ) empId: Long, @Query("status") status: String
    ): Call<BaseResponse<TodoBean>>

    /**
     * 待办事项
     */
    @GET(HttpUrl.URL_TODO_LIST_NEW)
    fun getTodoListNew(
        @Query(value = "currentPage") currentPage: Int, @Query("pageSize") pageSize: Int, @Query(
            "empId"
        ) empId: Long, @Query("status") status: String
    ): Call<BaseResponse<List<TodoBean>>>

    /**I
     * 设置待办事项完成
     */
    @POST(HttpUrl.URL_TODO_STAtUS)
    fun setTodoStatus(@Body request: RequestBody): Call<BaseResponse<String>>

    @GET(HttpUrl.URL_CHECK_APK)
    fun getCheckApk(@Query(value = "versionCode") versionCode: String): Call<BaseResponse<CheckApkBean>>

    /**
     * 获取海尔token
     */
    @GET(HttpUrl.URL_GETACCESSTOKEN)
    fun getAccessToken(): Call<BaseResponse<String>>

    /**
     * 获取验证码图形
     */
    @GET(HttpUrl.URL_GETAPTCHA)
    fun getCaptcha(@Query(value = "access_token") token: String): Call<BaseResponse<String>>

    /**
     * 获取短信验证码
     */
    @GET(HttpUrl.URL_GETMSCODE)
    fun getMsCode(
        @Query(value = "access_token") token: String, @Query(value = "phone") phone: String, @Query(
            value = "captchaToken"
        ) captchaToken: String, @Query(value = "captchaAnswer") captchaAnswer: String
    ): Call<BaseResponse<String>>

    /**
     * 提交注册
     */
    @POST(HttpUrl.URL_SIGNUPUCC)
    fun signUpUcc(@Body request: RequestBody): Call<BaseResponse<String>>

    /**
     * 修改首次登录
     */
    @POST(HttpUrl.URL_UPDATEISFIRST)
    fun upLoginFirst(@Body request: RequestBody): Call<BaseResponse<String>>

    /**
     * 没有日计划的做工
     */
    @POST(HttpUrl.URL_WORK_NO_PLAN)
    fun workNoPlan(@Body request: RequestBody): Call<BaseResponse<WorkRecordInsertResult>>

    /**
     * 质检分派 后完成做工
     */
    @POST(HttpUrl.URL_WORK_QC_SU)
    fun workQcSu(@Body request: RequestBody): Call<BaseResponse<String>>


    /**
     * 获取要领取的裁片包
     */
    @GET(HttpUrl.URL_GET_PACK_LIST)
    fun getPackGetList(
        @Query(value = "currentPage") currentPage: Int, @Query("pageSize") pageSize: Int, @Query(
            "factoryId"
        ) factoryId: Long
    ): Call<BaseResponse<GetPackBeanResult>>

    /**
     * 获取已经领取的裁片包
     */
    @GET(HttpUrl.URL_GET_PACK_LIST_HAS)
    fun getPackGetListHas(
        @Query(value = "currentPage") currentPage: Int, @Query("pageSize") pageSize: Int, @Query(
            "factoryId"
        ) factoryId: Long
    ): Call<BaseResponse<GetPackBeanResult>>

    /**
     * 领取裁片包
     */
    @POST(HttpUrl.URL_GET_PACK_GET)
    fun getPackGet(@Body request: RequestBody): Call<BaseResponse<String>>

    /**
     * 获取员工工资
     */
    @GET(HttpUrl.URL_GET_WORK_WAGE)
    fun getWorkWage(
        @Query(value = "currentPage") currentPage: Int, @Query("pageSize") pageSize: Int, @Query(
            "empId"
        ) empId: Long, @Query("startDate") startDate: String?, @Query("endDate") endDate: String?
    ): Call<BaseResponse<WorkWageResult>>

    /**
     * 月工资汇总
     */
    @GET(HttpUrl.URL_GET_MONTH_WAGE)
    fun getMonthWage(@Query("year") year: String, @Query("empId") empId: Long): Call<BaseResponse<WorkWageResult>>

    /**
     * 修改裁片包数量
     */
    @POST(HttpUrl.URL_GET_PACK_UPDATE_Qty)
    fun getPackUpdateQty(@Body request: RequestBody): Call<BaseResponse<String>>

    @GET(HttpUrl.URL_GET_PACK_BY_ID)
    fun getPackById(@Query("packId") packId: Long): Call<BaseResponse<PackBean>>

    /**
     * 查询 外协
     */
    @GET(HttpUrl.URL_GET_OUT_SOURCE_LIST)
    fun getOutSourceList(@Query("type") type: Int, @Query("code") code: String?): Call<BaseResponse<OutSourceBean>>

    /**
     * bom 入库
     */
    @POST(HttpUrl.URL_POST_OUT_SOURCE_BOM)
    fun postBomInhouse(@Body request: RequestBody): Call<BaseResponse<String>>

    /**
     * pack 入库
     */
    @POST(HttpUrl.URL_POST_OUT_SOURCE_PACK)
    fun postPackInhouse(@Body request: RequestBody): Call<BaseResponse<String>>

    /**
     * 成品 入库
     */
    @POST(HttpUrl.URL_POST_OUT_SOURCE_PRODUCT)
    fun postProductInhouse(@Body request: RequestBody): Call<BaseResponse<String>>

    /**
     * 领纱
     */
    @POST(HttpUrl.URL_YARN_IN)
    fun  postYarnIn(@Body request: RequestBody):Call<BaseResponse<String>>

    /**
     * 退纱
     */
    @POST(HttpUrl.URL_YARN_UN)
    fun postYarnUn(@Body request: RequestBody):Call<BaseResponse<String>>

    /**
     * 排班号
     */
    @GET(HttpUrl.URL_SCHEDU_LIST)
    fun getScheduList(@Query(value = "currentPage") page: Int, @Query(value = "pageSize") size: Int,@Query(value = "workShopId") workShopId: String?): Call<BaseResponse<SelectScheduBean>>

    /**
     * 新增废片
     */
    @POST(HttpUrl.URL_BAD_FLAT_ADD)
    fun postBadFlat(@Body request: RequestBody):Call<BaseResponse<String>>

    /**
     * 排班号下的班组
     */
    @GET(HttpUrl.URL_SCHEDU_CLASS)
    fun getScheduClass(@Query(value = "scheduId") scheduId: Long?): Call<BaseResponse<MutableList<ScheduClassBean>>>

    /**
     * 排班号下的人员
     */
    @GET(HttpUrl.URL_SCHEDU_EMP)
    fun getScheduEmp(@Query(value = "scheduId") scheduId: Long?,@Query(value = "classId") classId: Long?): Call<BaseResponse<MutableList<ScheduClassBean>>>


    /**
     * 根据二维码查询裁片包(出入库)
     */
    @GET(HttpUrl.URL_HOUSE_QR)
    fun getPackByQrcodeHouse(@Query(value = "QRcode") qrCode: String?): Call<BaseResponse<PackBean>>

    /**
     * 根据RFID查询裁片包(出入库)
     */
    @GET(HttpUrl.URL_HOUSE_RFID)
    fun getPackByRfidHouse(@Query(value = "RFIDcode") rfidCode: String?): Call<BaseResponse<PackBean>>
    /**
     * 出库 入库
     */
    @POST(HttpUrl.URL_HOUSE_SAVE)
    fun postHouseSave(@Body request: RequestBody):Call<BaseResponse<String>>

    /**
     * 扫码绑衣服
     */
    @POST(HttpUrl.URL_CLOTHES_BIND)
    fun postClothesBind(@Body request: RequestBody):Call<BaseResponse<String>>

    /**
     * 扫码查询设备
     */
    @GET(HttpUrl.URL_MACHINE_SELECT_QR)
    fun getSysMacByQrcode(@Query("qrCode") qrCode: String?): Call<BaseResponse<MathineBean>>

    /**
     * 新增设备检查
     */
    @POST(HttpUrl.URL_MACHINE_SHEET_ADD)
    fun postAddMachineCheck(@Body request: RequestBody):Call<BaseResponse<String>>
    /**
     * 修改设备检查
     */
    @POST(HttpUrl.URL_MACHINE_SHEET_UPDATE)
    fun postUpDateMachineCheck(@Body request: RequestBody):Call<BaseResponse<String>>
    /**
     * 查询设备检查是否插入过相同
     */
    @GET(HttpUrl.URL_MACHINE_SHEET_SELECT)
    fun getMachineSheet(@Query("machineNo") machineNo: String?,@Query("workDay") workDay: String?,@Query("shifts") shifts: String?,@Query("timeSlot") timeSlot: String?): Call<BaseResponse<MutableList<MacCheckBean>>>

    /**
     * 查询设备检查是否插入过相同
     */
    @GET(HttpUrl.URL_MACHINE_SHEET_LIST)
    fun getMachineSheetList(@Query("currentPage") currentPage: Int?,@Query("pageSize") pageSize: Int?,@Query("empId") empId: String?,@Query("workDay") workDay: String?): Call<BaseResponse<MacCheckList>>


    /**
     * 新增日保养
     */
    @POST(HttpUrl.URL_MACHINE_CARE_DAY_ADD)
    fun postAddMachineCareDayAdd(@Body request: RequestBody):Call<BaseResponse<String>>
    /**
     * 修改日保养
     */
    @POST(HttpUrl.URL_MACHINE_CARE_DAY_UPDATE)
    fun postUpDateMachineCareDayUpdate(@Body request: RequestBody):Call<BaseResponse<String>>
    /**
     * 查询日保养是否插入过相同
     */
    @GET(HttpUrl.URL_MACHINE_CARE_DAY_SELECT)
    fun getMachineCareDay(@Query("machineNo") machineNo: String?,@Query("workDay") workDay: String?,@Query("empId") empId: String?): Call<BaseResponse<MutableList<MachineCareDayBean>>>

    /**
     * 查询日保养是否插入过相同
     */
    @GET(HttpUrl.URL_MACHINE_CARE_DAY_LIST)
    fun getMachineCareDayList(@Query("currentPage") currentPage: Int?,@Query("pageSize") pageSize: Int?,@Query("empId") empId: String?,@Query("workDay") workDay: String?): Call<BaseResponse<MacCareDayList>>


    /**
     * 新增周保养
     */
    @POST(HttpUrl.URL_MACHINE_CARE_WEEk_ADD)
    fun postAddMachineCareWeekAdd(@Body request: RequestBody):Call<BaseResponse<String>>
    /**
     * 修改周保养
     */
    @POST(HttpUrl.URL_MACHINE_CARE_WEEK_UPDATE)
    fun postUpDateMachineCareWeekUpdate(@Body request: RequestBody):Call<BaseResponse<String>>
    /**
     * 查询周保养是否插入过相同
     */
    @GET(HttpUrl.URL_MACHINE_CARE_WEEK_SELECT)
    fun getMachineCareWeek(@Query("machineNo") machineNo: String?,@Query("workDay") workDay: String?,@Query("empId") empId: String?): Call<BaseResponse<MutableList<MachineCareWeekBean>>>

    /**
     * 查询周保养是否插入过相同
     */
    @GET(HttpUrl.URL_MACHINE_CARE_WEEK_LIST)
    fun getMachineCareWeekList(@Query("currentPage") currentPage: Int?,@Query("pageSize") pageSize: Int?,@Query("empId") empId: String?,@Query("workDay") workDay: String?): Call<BaseResponse<MacCareWeekList>>

    /**
     * 查询周保养是否插入过相同
     */
    @GET(HttpUrl.URL_DAY_PLAN_CHANGE_SELECT)
    fun getDayPlanChangeSelect(@Query("empId") empId: String?): Call<BaseResponse<ArrayList<DayPlanNotifBean>>>

    /**
     * 公告
     */
    @GET(HttpUrl.URL_MESSAGE_NOTIFI)
    fun getMessageNotifi(@Query(value = "empId") empId: String): Call<BaseResponse<ArrayList<Item>>>

    /**
     * 物料通知
     */
    @GET(HttpUrl.URL_BOM_NOTIFI)
    fun getBomNotifi(@Query(value = "empId") empId: String): Call<BaseResponse<ArrayList<BomNotifiBean>>>
    /**
     * 班组长获取预警
     */
    @GET(HttpUrl.URL_SELECT_MACHINE_WARN)
    fun getMachineWarn(@Query(value = "empId") empId: String): Call<BaseResponse<ArrayList<MachineWarnNotifiBean>>>

    /**
     * 扫箱码
     */
    @GET(HttpUrl.URL_SELECT_BOX)
    fun getBox(@Query(value = "boxQRCode") boxQRCode: String?): Call<BaseResponse<BoxBean>>

    /**
     * 装箱
     */
    @POST(HttpUrl.URL_SKU_IN_BOX)
    fun postSkuBox(@Body request: RequestBody):Call<BaseResponse<String>>

    /**
     * 上传图片
     */
    @Multipart
    @POST(HttpUrl.URL_PIC_UPLOAD)
    fun postPic(@Part file: MultipartBody.Part):Call<BaseResponse<String>>

    /**
     * 上传头像
     */
    @POST(HttpUrl.URL_UPDATE_EMP_IMG)
    fun postEmpImg(@Body request: RequestBody):Call<BaseResponse<String>>
    /**
     * 获取款式资料
     * @param cancelEmp 制单号
     */
    @GET(HttpUrl.URL_GET_STYLE_FILE)
    fun getSytelFile(@Query(value = "orderNumber") cancelEmp: String?):Call<BaseResponse<StyleFileBean>>

    /**
     * 设置倒毛数量
     */
    @POST(HttpUrl.URL_SET_DM_QTY)
    fun postDmQty(@Body request: RequestBody): Call<BaseResponse<String>>

    /**
     * 领纱列表
     */
    @GET(HttpUrl.URL_YARN_IN_LIST)
    fun getYarnInList(@Query(value = "currentPage") page: Int, @Query(value = "pageSize") size: Int,@Query(value = "empId") empId: String?): Call<BaseResponse<YarnInBean>>
    /**
     * 退纱列表
     */
    @GET(HttpUrl.URL_YARN_UN_LIST)
    fun getYarnUnList(@Query(value = "currentPage") page: Int, @Query(value = "pageSize") size: Int,@Query(value = "empId") empId: String?): Call<BaseResponse<YarnUnBean>>
    /**
     * 废片列表
     */
    @GET(HttpUrl.URL_BAD_FLAT_LIST)
    fun getBadFlatList(@Query(value = "currentPage") page: Int, @Query(value = "pageSize") size: Int,@Query(value = "status") status: Int?): Call<BaseResponse<BadFlatBean>>

    /**
     * 新增拆解单
     */
    @POST(HttpUrl.URL_DISASSEMBLEY_INSERT)
    fun postDissasse(@Body request: RequestBody):Call<BaseResponse<String>>

    /**
     * 根据制单号查询加工单
     */
    @GET(HttpUrl.URL_ORDER_JIAGONG)
    fun getOrderJiagong(@Query(value = "orderNo") orderNo: String?): Call<BaseResponse<MutableList<GetBomNotifiBean>>>
    /**
     * 根据订单号查询
     */
    @GET(HttpUrl.URL_ORDER_BOM)
    fun getOrderBomDetail(@Query(value = "yarnInformNo") yarnInformNo: String?): Call<BaseResponse<MutableList<GetBomDetail>>>


    /**
     * app-查询当前登录员工的生产计划
     */
    @GET(HttpUrl.URL_FIND_PROGRAM)
    fun findProgramByEmpIdDate(@Query(value = "expectDate") expectDate: String): Call<BaseResponse<ArrayList<ProgramSchedulingBean>>>

 /**
     * app-查询当前登录员工的生产计划 machineId
  */
    @GET(HttpUrl.URL_FIND_PROGRAM_BY_MACHINE_IDDDATE)
    fun findProgramByMachineIddDate(@Query(value = "expectDate") expectDate: String,@Query(value = "machineId") machineId: String): Call<BaseResponse<ArrayList<MotorWorkRecordBean>>>

    /**
     *
     */
    @POST(HttpUrl.UPDATE_PRODUCE_QTY)
    fun updateProducedQty(@Body request: RequestBody):Call<BaseResponse<String>>


    /**
     *app-查看织片包(牌仔)详
     */
    @GET(HttpUrl.PAIZAIINFO)
    fun paiZaiInfo(@Query(value = "id") id: String): Call<BaseResponse<PaiZaiBean>>

    /**
    app-设置织片包数量
     * POST /program/scheduling/setPaiZaiProducedQty
     */
    @POST(HttpUrl.SET_PAI_ZAI_PRODOUCED_QTY)
    fun setPaiZaiProducedQty(@Body request: RequestBody):Call<BaseResponse<String>>

    /**
     * app-转移织片包数量
     * POST /program/scheduling/tranPaiZaiProducedQty
     */
    @POST(HttpUrl.TRAN_PAI_ZAI_PRODUCED_QTY)
    fun tranPaiZaiProducedQty(@Body request: RequestBody):Call<BaseResponse<String>>



    /**
     *
     */
    @POST(HttpUrl.URL_SAVE_WORK)
    fun saveWork(@Body request: RequestBody): Call<BaseResponse<Object>>

    @GET(HttpUrl.URL_FIND_PIECE_INFO)
    fun findPieceInfo(@Query(value = "publicQRCode") expectDate: String): Call<BaseResponse<DayWorkRecordBean>>
}